$(document).ready(function(){
	
	//transforma o formulário em um wizard
	var wizardObj = wizard($("form").attr("id"),"turmas",false);

	//datepickers
	datePicker("abertura");
	datePicker("fechamento");
	
	$("#pessoaAutoDocente").simpleAutoComplete(600,"nome","pessoas?find=ByNomeLikeDocente");
	$("#pessoaAutoCoordenador").simpleAutoComplete(600,"nome","pessoas?find=ByNomeLikeDocente");
	$("#pessoaAutoSupervisor").simpleAutoComplete(600,"nome","pessoas?find=ByNomeLikeDocente");

	//combobox
	loadToComboBox("#ufInstituicao",estadoDataSource,"uf");
	loadToComboBox("#ramoSegurancaPublica",ramoSegurancaPublicaDataSource,"nome");
	loadToComboBox("#estadoDisposicao",estadoDataSource,"uf");
	loadToComboBoxUrl("#disciplina","disciplinas/combo/nome?class=br.com.educa.modelo.curso.Disciplina","nome");
	loadToComboBoxUrl("#certificacao","certificacaos/combo/descricao?class=br.com.educa.modelo.curso.Certificacao","descricao");
	loadToComboBoxUrl("#solicitacao","solicitacaocapacitacaos/combo/id?class=br.com.educa.modelo.curso.SolicitacaoCapacitacao&methodName=findSolicitacaoCapacitacaosByStatus&status=Aprovado","id");


	//combobox dependentes
	$("#ufInstituicao").change(function(event){ loadToSubcombo(event,'#municipioInstituicao','municipios/combo/nome?class=br.com.educa.modelo.publico.Municipio&methodName=findMunicipiosByEstado&estado=','nome'); });
	$("#municipioInstituicao").change(function(event){ loadToSubcombo(event,'#instituicaoEnsino','instituicaoensinoes/combo/nome?class=br.com.educa.modelo.instituicao.InstituicaoEnsino&methodName=findInstituicaoEnsinoesByMunicipio&municipio=','nome'); });
	$("#modalidadeEnsino").change(function(event){ loadToSubcombo(event,'#curso','cursoes/combo/nome?class=br.com.educa.modelo.curso.Curso&methodName=findCursoesByModalidadeEnsino&modalidadeEnsino=','nome'); });
	
	//define as colunas do um para muitos
	//Atividades
	var docentesAoColumns = [
                                        	{"sTitle": "Disciplina", "mDataProp": "disciplina.nome", "sWidth": "100px", "bVisible": true, "sDefaultContent":""},
											{"sTitle": "Docente", "mDataProp": "docente.nome", "sWidth": "150px", "bVisible": true, "sDefaultContent":""},
											{"sTitle": "Atividade", "mDataProp": "atividadeCurso", "sWidth": "150px", "bVisible": true, "sDefaultContent":""}
										];
	oneToMany("dataGridDocentes", JSON.stringify(docentesAoColumns));
	$("#adicionarDocentesBtn").button({icons: {primary: "ui-icon-plusthick"}, text: false}).click(
	function(){		
		adicionarDoFormParaDatagrid("docentes", "dataGridDocentes");
		return false;
	});
	
	
	//Vagas
	var distribuicaoVagasAoColumns = [
                                        	{"sTitle": "Ramo da SSP", "mDataProp": "ramoSegurancaPublica.nome", "sWidth": "100px", "bVisible": true, "sDefaultContent":""},
											{"sTitle": "Estado", "mDataProp": "estadoDisposicao.uf", "sWidth": "150px", "bVisible": true, "sDefaultContent":""},
											{"sTitle": "Qt. de Vagas", "mDataProp": "quantidade", "sWidth": "150px", "bVisible": true, "sDefaultContent":""}
										];
	oneToMany("dataGridDistribuicaoVagas", JSON.stringify(distribuicaoVagasAoColumns));
	$("#adicionarDistribuicaoVagasBtn").button({icons: {primary: "ui-icon-plusthick"}, text: false}).click(
	function(){
		var soma = 0;
		var dados = $("#dataGridDistribuicaoVagas").dataTable().fnGetData();
		if(dados.length > 0){
			for (var i=0; i<dados.length; i++){
				soma+= parseInt(dados[i].quantidade);
			}
		}
		soma+= parseInt($("#quantidade").val());
		if(soma > parseInt($("#vagas").val())){
			alert("A quantidade informada extrapola a quantidade de vagas liberadas que são "+$("#vagas").val()+" vagas, e você está tentando inserir "+soma+".");
		}else{		
			adicionarDoFormParaDatagrid("distribuicaoVagas", "dataGridDistribuicaoVagas");
		}
		return false;
	});
	
});

function popular(){

	var registro = $("#"+$("form").attr("id")).formParams(false);
    
	//oneToMany
	delete registro.distribuicaoVagas;
	registro.distribuicaoVagas = serializarDataGrid("dataGridDistribuicaoVagas");

	delete registro.docentes;
	registro.docentes = serializarDataGrid("dataGridDocentes");
	
	$("select").each(function(){
		try{ 
			eval("registro."+$(this).attr("id")+" = findDataId(registro."+$(this).attr("id")+".id, $(\"#"+$(this).attr("id")+"\").get(0).dataSource);");
		}catch(e){}
	});

	return registro;
}

function habilitaEscolha(opcao){
	if(opcao != "instituicao"){
		$("#outro").css("display", "block"); 
		$("#instituicao").css("display", "none"); 
	}else{
		$("#instituicao").css("display", "block"); 
		$("#outro").css("display", "none"); 
	}	
}


